iT邦幫忙

2024 iThome 鐵人賽

DAY 13
0
AI/ ML & Data

Let's Go To The AI Party!系列 第 14

Day13-監督式學習

  • 分享至 

  • xImage
  •  

監督式學習(Supervised Learning)

是機器學習一種方法,可以訓練資料中學到或建立一個模式,並模式推測新的實例。訓練資料由輸入物件和預期輸出所組成。函數的輸出可以是一個連續的值,或是預測一個分類標籤

一個監督式學習者任務在觀察完一些事先標記過訓練範例後,去預測這個函數對任何可能出現的輸入的輸出

監督式學習算法

  • 分類演算法:預測分類變量(離散值)取值,例如:垃圾郵件分類、圖像識別
  • 迴歸演算法:預測連續變量的值,例如:房價預測、股票回歸

監督式學習應用

  • 圖像識別(Image recognition):面部識別、物體識別
  • 自然語言處理(Natural language processing):機器翻譯、情感分析
  • 語音識別(Speech recognition):語音助手、語音轉錄
  • 推薦系統(Recommendation systems):電影推薦、商品推薦

監督式學習常見演算法

  • 線性迴歸(Linear regression):一種簡單迴歸算法,學習線性函數
  • 邏輯迴歸(Logistic regression):一種分類算法,學習邏輯函數
  • 支持向量機(Support vector machine):一種分類算法,學習最大邊緣超平面
  • 決策樹(Decision tree):分類和迴歸算法,學習樹狀結構
  • 隨機森林(Random forest):集成學習算法,由多棵決策樹組成
  • 梯度提升(Gradient boosting):集成學習算法,由多棵決策樹組成

優點與缺點

  • 易於理解和實現:監督式學習演算法通常比較直觀,易於理解和實現
  • 準確率高:監督式學習演算法能夠在許多任務上實現較高的準確率
  • 需要大量的標記數據:監督式學習演算法需要大量的標記數據進行訓練
  • 容易過擬合:監督式學習演算法容易過擬合訓練數據,在新的數據上表現不佳

程式碼(Python-Scikit-learn)

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

# 載入資料
data = pd.read_csv("data.csv")

# 分割資料集
X = data.drop("price", axis=1)  # 特徵
y = data["price"]  # 目標變數
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

# 建立模型
model = LinearRegression()

# 訓練模型
model.fit(X_train, y_train)

# 進行預測
y_pred = model.predict(X_test)

# 評估模型
mse = mean_squared_error(y_test, y_pred)
print("Mean Squared Error:", mse)

儘管存在這些局限性,監督式學習仍然是一種非常有用的機器學習方法,可以廣泛應用於各種實際問題


上一篇
Day12-機器學習
下一篇
Day14-半監督式學習
系列文
Let's Go To The AI Party!31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言